home *** CD-ROM | disk | FTP | other *** search
-
- In the previous article I introduced the principles of kvikkalkul to the
- world. So far the Swedish government hasn't bombed the location in Finland
- where the anon server is located and they didn't even arrest Swedish people
- who had the document on their computers.
-
- First there were questions about the name of the language. It's indeed not
- Swedish but rather Norwegian. Well, there were some Norwegians in the team
- that developed the language. The name kvikkalkul was believed to be a pun
- on Plankalkuel, the first high level language that was developed by Konrad
- Zuse. Kvikkalkul has hardly anything in common with Plankalkuel, but both
- were high-level languages and the only high-level languages in the world at
- that time.
-
- As far as I know kvikkalkul was developed for the Swedish Nuclear Arms
- program that never became reality. In 1957 everyone I spoke still believed
- that Sweden would have nukes in less than two years. I don't know for sure
- that Sweden had a nuclear arms program, but the rumors I heard suggested
- that. It would explain much of the secrecy around kvikkalkul. Another
- explanation was that if the Russians ever stole a program tape, they would
- think it was encrypted text or downright gibberish and they would never
- suspect it to be software. Well, Russians, if you have tapes with things
- like .5 (: ,33 -) :8 you have Swedish source code!
-
- My kvikkalkul handbook from 1956 shows one construct that was removed from
- the language by the time I started in 1957. It was the probabilistic jump.
-
- The statement
- -) :4
-
- would always jump, the statement
-
- .9 ): ,5 -) :4
-
- would only jump if register 9 was at least 1/2, The statement
-
- ,333333 -) :4
-
- would jump with a probability of 1/3. This particular form was deleted.
- Now comes the most interesting part. If the number in front of the -) was
- negative, the jump would be taken in the reverse direction. It was as if
- there was a jump with the corresponding positive probability at the
- destination label of the jump and that jump jumped to the location of the
- jump statement. Sounds like COME FROM, doesn't it? A pity they didn't keep
- it :-(
-
- When they deleted the probabilistic jump, they added the random number
- channel, so you could do
- (3) ): ,0 -) :4
- to jump with a probability of 1/2. No substitute for COME FROM though. As
- the random number channel was unreliable, one would use
-
- :4 -) 314
- :0 -) 1400
- -) :4
- 1400:
- :4 -) 2000
- .0 ): ,0 -) :4
-
- This is: call subroutine 314 to compute a pseudorandom number and to 2000
- if the result in register 0 is greater than or equal to 0.
-
- Back in 1957 computers were rare and extremely expensive. We were taught by
- an instructor who had a really funny explanation of the word 'transistor'
- (the computer that we used was one of the first transistor computers). He
- said, "You know, transistor means small. A transistor radio is a small radio
- that is not as powerful as a real radio, but that you can take with you when
- traveling. SABINA is a transistor computer. It is small, not as powerful as
- a real computer and we will take it with us on our submarines." Operating a
- computer was comparable in cost to flying an airplane. You wouldn't make
- a flight in a bomber for fun and neither would you run any program for fun.
- Playing games with the computer was just UNTHINKABLE. One would only compile
- and run programs that were approved by one's supervisor.
-
-